Work management systems, including call management, workflow automation, work distributor, and automatic call distribution (ACD) systems, distribute work items—whether tangible or intangible, and referred to herein as tasks—for servicing to resources, such as processing machines or call-center agents. In order to operate efficiently, work management systems must anticipate when resources will become available to serve a new task, so that they can have a task ready for a resource as soon as the resource becomes available and preferably no earlier. Otherwise, tasks such as calls must wait in queue for resources to become available, to the dissatisfaction of the callers, or resources sit idle while awaiting tasks to become available, to the detriment of operating efficiency of the system.
Work arrangement systems often do not use an accurate forecast of the future availability of presently unavailable resources. In these kinds of systems, resources are presently unavailable because they are performing tasks that are designated to be uninterruptible. That is, a resource can serve only one task at a time and cannot start a new task until the present task is completed. Additionally, only one resource can usually be assigned to a particular task. Illustrative such tasks involve live clients in transactions, such as telephone calls. Background tasks may be dynamically interspersed amongst them. Resources that are presently handling tasks are rendered presently unavailable. However, each unavailable resource can be expected to complete its task within a future time interval with a determinable probability. This expectation for the “arrival” of a resource can be based upon its time-in-state and the particular operational characteristics of the type of task, which the resource is serving.
Typically, automatic systems forecast the arrival of new tasks better than they forecast the arrival of resources to serve them. For example, one known call-management system does not use dynamic forecasts at all. Instead, its prediction algorithm triggers the initiation of new outgoing calls (tasks) for each agent (resource) after the agent has been in a ‘work’, ‘record update’, or ‘wrap-up’ state for a relatively fixed amount of time. The system does not compute a probability of task completion for agents, either collectively or individually. This results in low agent utilization, and in high client nuisance rates due to clients' time spent waiting in queue and client-abandoned calls.
A task-acquisition subsystem should strive to keep resources busy serving tasks at all times. For example, an outbound predictive dialer should initiate outbound calls based upon the aggregate availability of agents. The time horizon for this determination should be close to the amount of time that it takes to have an incremental outbound call attempt answered by a human being (i.e., to obtain a live-party answer). Then outbound calls can be initiated to generate a demand for service that appropriately reduces the gap between the supply of agents and the demand for them.
An automatic call distributor or work distributor dispatches a resource to serve lower-priority tasks when the supply of resources exceeds by some selected amount the demand for service by higher-priority tasks. In this case, the relevant time horizon for a forecast is typically close to the amount of time that the resources could be assigned to lower-priority tasks before becoming available again to service other tasks.